package com.liu.algorithm.class01;

import java.util.Random;

/**
 * @author LIU
 * @version 1.0
 * @description: TODO
 * @date 2022/8/4 15:35
 */
public class test {
    public static void main(String[] args) {
        int length = 16;
        int foot = 0 ;
        int arr[] = new int[length];

        Random random = new Random();
        while (foot < length){
            int num = random.nextInt(30);
            if(num != 0){
                arr[foot++] = num;
            }
        }

        //选择排序
//        for (int i = 0; i < length; i++) {
//            int minValueIndex = i;
//            for (int j = i+1; j < length; j++) {
//                if (arr[minValueIndex]> arr[j]){
//                    minValueIndex = j;
//                }
//            }
//            swap(arr,i,minValueIndex);
//        }

        //冒泡排序
//        for (int i = length; i >0 ; i--) {
//            for (int j = 1; j < i; j++) {
//                if (arr[j] <arr[j-1]){
//                    swap(arr,j,j-1);
//                }
//            }
//        }

        //插入排序
        for (int i = 1; i < length; i++) {
            for (int j = i; j > 0 && arr[j] < arr[j - 1]; j--) {
                swap(arr, j, j - 1);
            }
        }


        for (int i : arr) {
            System.out.print(i + " ");
        }
        System.out.println();
    }

    public static void swap(int[] arr, int i, int j) {
        int temp = arr[i];
        arr[i] = arr[j];
        arr[j] = temp;

    }
}
